home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / Archives / Timing / TimeKeeper.lzh / TimeKeeper / TimeKeeper.doc < prev    next >
Encoding:
Text File  |  1993-01-25  |  6.5 KB  |  145 lines

  1.  
  2.                                 TimeKeeper v1.0
  3.  
  4.                           by Mattias Moltkesson 1992
  5.  
  6.                                    FREEWARE
  7.  
  8.  
  9.      1.   Introduction
  10.           TimeKeeper is a program that saves the system time in a memory
  11.           block at regular intervals. The memory block is linked into the
  12.           ExecBase->KickMemPtr list and will be allocated by Exec early
  13.           in the boot process, thus making it survive a reset. The time
  14.           can then be restored when TimeKeeper is restarted, preferably
  15.           in the user-startup or the startup-sequence. This is of course
  16.           only useful if you don't have a battery backed-up clock.
  17.  
  18.      1.1. System requirements
  19.           This program should work on any Amiga, though I haven't tested
  20.           it on anything else than my A500+. However, it requires
  21.           AmigaDos 2.0.
  22.  
  23.  
  24.      2.   Installing
  25.           To install TimeKeeper, just move the main program to wherever
  26.           you like, and the line below to either the user-startup or the
  27.           startup-sequence.
  28.  
  29.           run TimeKeeper <options>
  30.  
  31.           To make the startup window go away, you might need to use
  32.           runback instead of run, or redirect the console output to nil:,
  33.           like this:
  34.  
  35.           run >nil: TimeKeeper >nil: <options>
  36.  
  37.           For maximum accuracy you might want to place this line
  38.           somewhere in the startup scripts that takes a fairly constant
  39.           time to reach after resets.
  40.           If you are using the compensate option, TimeKeeper will also
  41.           look for a file named "TimeKeeper.comp". It should be located
  42.           in either progdir: (i.e. the same directory as TimeKeeper
  43.           itself resides in) or s:.
  44.  
  45.  
  46.      3.   Options
  47.           The template for TimeKeeper is "I=INTERVAL/N, PRI=PRIORITY/N,
  48.           C=COMMAND, COMP=COMPENSATE/S, QUIT/S". Each option is described
  49.           in detail below. If you enter a single ? on the argument line,
  50.           the template will be shown and you are prompted to enter an
  51.           argument line. Entering another ? gives you a brief description
  52.           of each option and again prompts you for an argument line.
  53.           If TimeKeeper is already running, the options you specify will
  54.           be sent to the active process. Note that it really only makes
  55.           sense to send the interval, priority and quit options to an
  56.           active process.
  57.           Currently TimeKeeper can only be started from Shell.
  58.  
  59.      3.1. I=INTERVAL/N
  60.           This option specifies the interval in seconds between savings
  61.           of the system time in the resident memory block. The default
  62.           value is 1. Specifying a longer interval uses less CPU time,
  63.           but on the other hand the accuracy of the restored time is
  64.           lower. At an interval of 1, TimeKeeper uses less than 0.01% of
  65.           the system time on my standard A500+, so that shouldn't really
  66.           be a problem.
  67.  
  68.      3.2. PRI=PRIORITY/N
  69.           This option lets you specify the priority for the TimeKeeper
  70.           process. A high priority will give maximum accuracy, while a
  71.           low priority makes sure that almost no CPU time is used when
  72.           the processor is busy doing more important work. It's not
  73.           recommended to have a priority outside the range of -5 to +5.
  74.           On exiting the original priority will be restored.
  75.  
  76.      3.3. C=COMMAND
  77.           This option should be a string to execute as a Shell command if
  78.           the time couldn't be restored (i.e. if TimeKeeper couldn't find
  79.           it's memory block in the KickMemPtr list). This could for
  80.           example be the preferences time setter, or an atomclock calling
  81.           utility.
  82.  
  83.      3.4. COMP=COMPENSATE/S
  84.           Activates the boot delay compensation feature. TimeKeeper will
  85.           compensate for the time it takes to restart TimeKeeper after a
  86.           reset with this switch on. The delay time will be stored in a
  87.           file called "TimeKeeper.comp", stored either in progdir: or s:.
  88.           If this file can't be found, TimeKeeper will put up a requester
  89.           asking how much time that has passed since the reset. This time
  90.           should be entered as how many seconds that has passed between
  91.           the reset and pressing enter in the string gadget (or pressing
  92.           the OK button). This information will then be stored in
  93.           progdir:. As said above, you can move the file to s: if you
  94.           wish.
  95.           To calibrate this feature, just put TimeKeeper in your startup
  96.           with Comp(ensate) on the argument line. Then start up
  97.           TimeKeeper and reset. Be sure to keep track of the time. When
  98.           the requester pops up, enter the time an press enter (or OK).
  99.           Remember that the time it took to enter it should be included.
  100.  
  101.      3.5. QUIT/S
  102.           Tells an active TimeKeeper process to quit. Can also be used to
  103.           just restore the time and immediately exit.
  104.  
  105.  
  106.      4.   Other info
  107.           TimeKeeper is pure and can be made resident if you wish.
  108.           When executing a command specified with the command option, or
  109.           requesting the boot delay, TimeKeeper won't be able to answer
  110.           messages from other TimeKeeper tasks. Thus, the sending task
  111.           will lock up until the receiver can answer the message.
  112.           I've included the source code for those interested. It was
  113.           compiled with DICE, and you might have to change a few things
  114.           to be able to compile it with other compilers. Please don't
  115.           distribute any modified versions, contact me instead. That will
  116.           help keeping the program and it's versions consistent.
  117.           
  118.      4.1  Acknowledgements
  119.           Thanks goes to the following persons:
  120.           Michael Krogsbøll, for contributing to this program before it
  121.           was even thought of. :-)
  122.           Henrik Nordström, for helping me out on some points.
  123.           Jan van den Baard, for his excellent program GadToolsBox, which
  124.           I used for making the requester.
  125.  
  126.  
  127.      5.   The Author (That's me! :-))
  128.           If you have any suggestions, question or bug reports, please
  129.           get in touch with me. I can be reached on the following
  130.           addresses:
  131.  
  132.           InterNet: molke@bugend.edvina.se (preferred)
  133.                     molke@bill.forsmark.uu.se (until June 93)
  134.                     molke@augs.se
  135.  
  136.           FidoNet: 2:206/108.3
  137.  
  138.           Mattias Moltkesson
  139.           Skördevägen 4
  140.           S-743 34  Storvreta
  141.           SWEDEN
  142.  
  143.           Phone: +46-18-315063
  144.  
  145.